﻿using System.Xml;

namespace MockingBird.Simulator.Framework.Interfaces
{
    public interface IResponseBuilder
    {
        /// <summary>
        /// Constructs a response message from the data which is held in separate header and body files
        /// the interface does not prescribe the format of the header or body elements
        /// </summary>
        /// <param name="bodyDataFile">full file name containing the body data.Usually not nullable</param>
        /// <param name="headerData">null or header data</param>
        /// <returns>XmlDocument representing the full response</returns>
        XmlDocument BuildResponse(string bodyDataFile, XmlDocument headerData);

        /// <summary>
        /// Constructs a response message from the data which is held in separate header and body segments
        /// </summary>
        /// <param name="bodyData">XmlDocument containing the body data.Usually not nullable</param>
        /// <param name="headerData">null or header data</param>
        /// <returns></returns>
        XmlDocument BuildResponse(XmlDocument bodyData, XmlDocument headerData);

    }
}
